Video E-commerce

ABSTRACT

Video e-commerce network, module and methods. In one embodiment, a product/service catalog which includes a video playlist, is delivered to a viewer via a published video e-commerce module. In one embodiment, the catalog is customized based on the website that published the module and/or the viewer of the module. In one embodiment, the viewer may complete the purchase of a product/service in the catalog within the module.

CROSS REFERENCE TO RELATED APPLICATIONS

This application is a continuation of application Ser. No. 12/921,948which claims the benefit of priority of U.S. Provisional No. 61/064,668filed Mar. 19, 2008, both of which are hereby incorporated by referenceherein.

FIELD OF THE INVENTION

This invention relates to electronic commerce.

BACKGROUND OF THE INVENTION

Electronic commerce (also known as e-commerce or ecommerce) refers tothe buying and selling of products or services over electronic systemssuch as the Internet and other networks. Innovations which havecontributed to electronic commerce include, inter-alia, online marketing(i.e. the marketing of products or services over electronic systems) andelectronic funds transfer.

SUMMARY OF THE INVENTION

According to the present invention there is provided a system forconfiguring a video e-commerce module, comprising: an uploader forinputting data on commodities, including associated videos or links toassociated videos; a configurator for configuring a video e-commercemodule capable of playing videos relating to commodities, wherein theconfiguring includes enabling or disabling run time generation ormodification of a catalog which corresponds to the module and whichincludes at least two commodities; and a data repository for storing theconfigured video e-commerce module.

According to the present invention, there is also provided a system forproviding to a viewer a catalog of at least one commodity, comprising: abrowser; and a video e-commerce module associated with a webpage;wherein the browser is configured to access the webpage, and to load themodule; and wherein the module is configured, after having been loadedby the browser, to communicate at least one parameter, including anindication that run time generation or modification of a catalog isdesired, and to receive, based at least partly on the at least oneparameter, a catalog of at least one commodity, the module furtherconfigured to play at least one video associated with the catalog.

According to the present invention, there is further provided a systemfor generating or modifying in run time a catalog of at least onecommodity, comprising: a data repository; and a selector; wherein theselector is configured to receive from a client an indication thatrun-time generation or modification of a catalog is desired, to executean algorithm to determine which at least one commodity will be includedin the catalog, and to retrieve data relating to the included at leastone commodity from the data repository, the data including videosassociated with the included commodities or links to the associatedvideos; and wherein the selector is further configured to communicatethe catalog which includes the data to the client.

According to the present invention, there is yet further provided amethod of configuring a video e-commerce module, comprising: inputtingdata on commodities, including associated videos or links to associatedvideos; configuring a video e-commerce module capable of playing videosrelating to commodities, wherein the configuring includes enabling ordisabling run time generation or modification of a catalog whichcorresponds to the module and which includes at least two commodities;and storing the configured video e-commerce module on a computerreadable medium.

According to the present invention, there is provided a method ofproviding to a viewer a catalog of at least one commodity which isembodied on a computer readable medium, comprising: communicating atleast one parameter, including an indication that run-time generation ormodification of a catalog is desired, and receiving, based at leastpartly on the at least one parameter, a catalog of at least onecommodity; and playing at least one video associated with the catalog.

According to the present invention, there is also provided a method ofgenerating or modifying in run time a catalog of at least one commoditywhich is embodied on a computer readable medium, comprising: receivingfrom a client an indication that run-time generation or modification ofa catalog is desired; executing an algorithm to determine which at leastone commodity will be included in the catalog; retrieving data relatingto the included at least one commodity from a data repository, the dataincluding videos associated with the included commodities or links tothe associated videos; and communicating the catalog which is embodiedon a computer readable medium and which includes the data to the client.

According to the present invention, there is further provided a systemfor providing to a viewer a catalog of at least one commodity,comprising: a browser; and a video e-commerce module associated with awebpage; wherein the browser is configured to access the webpage, and toload the module; and wherein the module is configured, after having beenloaded by the browser, to communicate at least one parameter and toreceive, based at least partly on the at least one parameter, a catalogof at least one commodity, the module further configured to play atleast one video associated with the catalog.

According to the present invention, there is yet further provided asystem for providing to a viewer a catalog of at least one commodity,comprising: a data repository; a browser; a video e-commerce moduleassociated with a webpage; and a selector; wherein the data repositoryis configured to store data relating to commodities; the browser isconfigured to access the webpage, and to load the video e-commercemodule; the module is configured, after having been loaded by thebrowser, to communicate at least one parameter to the selector; theselector is configured to receive the at least one parameter and basedat least partly on the at least one parameter to retrieve data relatingto at least one commodity from the data repository; the selector isfurther configured to communicate a catalog of the at least onecommodity for which related data was retrieved from the data repository,the catalog including a playlist of at least one video which relates tothe at least one commodity; and the module is further configured toreceive the catalog and to play at least one video on the playlist.

According to the present invention, there is provided a system forselling a commodity via a network, comprising: a browser; and a videoe-commerce module associated with a webpage; wherein the browser isconfigured to access the webpage, and to load the module; the module isconfigured to play from a playlist at least one video which relates toat least one commodity in a catalog associated with the module; and themodule is further configured to receive an indication from a viewer ofthe module that the viewer desires to buy a commodity from the catalog,and to complete a sale of the commodity.

According to the present invention, there is also provided a system forselling a commodity via a network, comprising: a browser; a videoe-commerce module associated with a webpage; and an inventory engine;wherein the browser is configured to access the webpage, and to load themodule; the module is configured to play from a playlist at least onevideo which relates to at least one commodity in a catalog associatedwith the module; and the module is further configured to receive anindication from a viewer of the module of a desire to buy a commodityfrom the catalog, and to indicate to the inventory engine to reduceinventory remaining for the commodity when completing a sale of thecommodity.

According to the present invention, there is further provided a systemfor associating a video e-commerce module with a webpage, comprising: abrowser configured to access a webpage which is associated with a videoe-commerce module and to load the module; a configurator configured toassociate an identifier of an owner of another webpage with the module;and means for publishing the configured module on the other webpage.

According to the present invention, there is yet further provided amethod of providing to a viewer a catalog of at least one commoditywhich is embodied on a computer readable medium, comprising:communicating at least one parameter and receiving, based at leastpartly on the at least one parameter, a catalog of at least onecommodity; and playing at least one video associated with the catalog.

According to the present invention, there is provided a method ofproviding to a viewer a catalog of at least one commodity which isembodied on a computer readable medium, comprising: receiving at leastone parameter from a video e-commerce module on a client associated witha viewer, retrieving, based at least partly on the received at least oneparameter, data relating to at least one commodity from a datarepository; and communicating to the module a catalog of the at leastone commodity for which related data was retrieved from the datarepository to the module, the catalog including a playlist of at leastone video playable by the module and which relates to the at least onecommodity.

According to the present invention, there is also provided a method ofselling a commodity via a network, comprising: receiving an indicationfrom a viewer that the viewer desires to buy a commodity from anassociated catalog, the catalog including a playlist of at least oneplayable video which relates to at least one commodity; and completing asale of the desired commodity.

According to the present invention, there is further provided a methodof selling a commodity via a network, comprising: receiving anindication from a viewer that the viewer desires to buy a commodity froman associated catalog, the catalog including a playlist of at least oneplayable video which relates to at least one commodity; and reducingremaining inventory for the desired commodity when a sale is completedfor the desired commodity.

According to the present invention, there is yet further provided amethod of associating a video e-commerce module with a webpage,comprising: accessing a webpage which is associated with a videoe-commerce module and loading the module; associating an identifier ofan owner of another webpage with the module; and publishing theconfigured module on the other webpage.

According to the present invention, there is provided a method ofelectronic commerce, comprising: providing videos relating tocommodities to viewers of WebPages, wherein publishers of the WebPagesare compensated for certain viewer reactions to the played videos.

According to the present invention, there is also provided a method ofelectronic commerce, comprising: providing catalogs of commodities toviewers of WebPages, the catalogs including playlists of videos relatingto the commodities, wherein publishers of the WebPages are compensatedfor viewers purchasing the commodities.

According to the present invention, there is further provided a computerprogram product comprising a computer useable medium having computerreadable program code embodied therein for configuring a videoe-commerce module, the computer program product comprising: computerreadable program code for causing the computer to input data oncommodities, including associated videos or links to associated videos;computer readable program code for causing the computer to configure avideo e-commerce module capable of playing videos relating tocommodities, wherein the configuring includes enabling or disabling runtime generation or modification of a catalog which corresponds to themodule and which includes at least two commodities; and computerreadable program code for causing the computer to store the configuredvideo e-commerce module on a computer readable medium.

According to the present invention, there is yet further provided acomputer program product comprising a computer useable medium havingcomputer readable program code embodied therein for providing to aviewer a catalog of at least one commodity which is embodied on acomputer readable medium, the computer program product comprising:computer readable program code for causing the computer to communicateat least one parameter, including an indication that run-time generationor modification of a catalog is desired, and to receive, based at leastpartly on the at least one parameter, a catalog of at least onecommodity; and computer readable program code for causing the computerto play at least one video associated with the catalog.

According to the present invention, there is provided a computer programproduct comprising a computer useable medium having computer readableprogram code embodied therein for generating or modifying in run time acatalog of at least one commodity which is embodied on a computerreadable medium, the computer program product comprising: computerreadable program code for causing the computer to receive from a clientan indication that run-time generation or modification of a catalog isdesired; computer readable program code for causing the computer toexecute an algorithm to determine which at least one commodity will beincluded in the catalog; computer readable program code for causing thecomputer to retrieve data relating to the included at least onecommodity from a data repository, the data including videos associatedwith the included commodities or links to the associated videos; andcomputer readable program code for causing the computer to communicatethe catalog which is embodied on a computer readable medium and whichincludes the data to the client.

According to the present invention, there is also provided a computerprogram product comprising a computer useable medium having computerreadable program code embodied therein for providing to a viewer acatalog of at least one commodity which is embodied on a computerreadable medium, the computer program product comprising: computerreadable program code for causing the computer to communicate at leastone parameter and to receive, based at least partly on the at least oneparameter, a catalog of at least one commodity; and computer readableprogram code for causing the computer to play at least one videoassociated with the catalog.

According to the present invention, there is further provided a computerprogram product comprising a computer useable medium having computerreadable program code embodied therein for providing to a viewer acatalog of at least one commodity which is embodied on a computerreadable medium, the computer program product comprising: computerreadable program code for causing the computer to receive at least oneparameter from a video e-commerce module on a client associated with aviewer; computer readable program code for causing the computer toretrieve, based at least partly on the received at least one parameter,data relating to at least one commodity from a data repository; andcomputer readable program code for causing the computer to communicateto the module a catalog of the at least one commodity for which relateddata was retrieved from the data repository to the module, the catalogincluding a playlist of at least one video playable by the module andwhich relates to the at least one commodity.

According to the present invention, there is yet further provided acomputer program product comprising a computer useable medium havingcomputer readable program code embodied therein for selling a commodityvia a network, the computer program product comprising: computerreadable program code for causing the computer to receive an indicationfrom a viewer that the viewer desires to buy a commodity from anassociated catalog, the catalog including a playlist of at least oneplayable video which relates to at least one commodity; and computerreadable program code for causing the computer to complete a sale of thedesired commodity.

According to the present invention, there is provided a computer programproduct comprising a computer useable medium having computer readableprogram code embodied therein for selling a commodity via a network, thecomputer program product comprising: computer readable program code forcausing the computer to receive an indication from a viewer that theviewer desires to buy a commodity from an associated catalog, thecatalog including a playlist of at least one playable video whichrelates to at least one commodity; and computer readable program codefor causing the computer to reduce remaining inventory for the desiredcommodity when a sale is completed for the desired commodity.

According to the present invention, there is also provided a computerprogram product comprising a computer useable medium having computerreadable program code embodied therein for associating a videoe-commerce module with a webpage, the computer program productcomprising: computer readable program code for causing the computer toaccess a webpage which is associated with a video e-commerce module andload the module; computer readable program code for causing the computerto associate an identifier of an owner of another webpage with themodule; and computer readable program code for causing the computer topublish the configured module on the other webpage.

According to the present invention, there is further provided a computerprogram product comprising a computer useable medium having computerreadable program code embodied therein for electronic commerce, thecomputer program product comprising: computer readable program code forcausing the computer to provide videos relating to commodities toviewers of WebPages, wherein publishers of the WebPages are compensatedfor certain viewer reactions to the played videos.

According to the present invention, there is yet further provided acomputer program product comprising a computer useable medium havingcomputer readable program code embodied therein for electronic commerce,the computer program product comprising: computer readable program codefor causing the computer to provide catalogs of commodities to viewersof WebPages, the catalogs including playlists of videos relating to thecommodities, wherein publishers of the WebPages are compensated forviewers purchasing the commodities.

BRIEF DESCRIPTION OF THE DRAWINGS

In order to understand the invention and to see how it may be carriedout in practice, embodiments will now be described, by way ofnon-limiting example only, with reference to the accompanying drawings,in which:

FIG. 1 is a block diagram of a video e-commerce network, according to anembodiment of the present invention;

FIG. 2 is a flowchart of a method for video e-commerce, according to anembodiment of the present invention;

FIG. 3 is a flowchart of a method for creating or modifying a catalog,according to an embodiment of the present invention; and

FIG. 4 is a block diagram of a video e-commerce module, according to anembodiment of the present invention.

DETAILED DESCRIPTION OF EMBODIMENTS

Described herein are embodiments for video e-commerce. In oneembodiment, a video e-commerce network enables the creation of acustomized catalog with video(s) of product(s)/service(s), and/orenables a viewer of the catalog, to complete a transaction forpurchasing a product/service from the catalog within a video e-commercemodule.

As used herein, the phrase “for example,” “such as” and variants thereofdescribe non-limiting embodiments of the present invention.

As used herein the term “commodity” refers to any product or servicewhich can be bought, sold, exchanged and/or otherwise be the object of atransaction. The term “commodities” refers to at least two commodities,where the commodities may be products, services, or a combination ofproduct(s) and service(s).

Reference in the specification to “one embodiment”, “an embodiment”,“some embodiments”, “another embodiment”, “other embodiments” orvariants thereof means that a particular feature, structure orcharacteristic described in connection with the embodiment(s) isincluded in at least one embodiment of the invention. Thus theappearance of the phrase “one embodiment”, “an embodiment”, “someembodiments”, “another embodiment”, “other embodiments” or variationsthereof does not necessarily refer to the same embodiment(s).

It should be appreciated that certain features of the invention, whichare, for clarity, described in the context of separate embodiments, mayalso be provided in combination in a single embodiment. Conversely,various features of the invention, which are, for brevity, described inthe context of a single embodiment, may also be provided separately orin any suitable sub-combination.

Unless specifically stated otherwise, as apparent from the followingdiscussions, it is appreciated that throughout the specificationdiscussions, utilizing terms such as, uploading, inputting, outputting,configuring, storing, playing, enabling, disabling, generating,modifying, sequencing, associating, communicating, receiving, loading,retrieving, completing, selling, performing, initiating, transferring,sending, redirecting, providing, determining, indicating, processing,executing, publishing, reconfiguring, reducing, or the like, refer tothe action and/or processes of any combination of software, hardwareand/or firmware. For example, these terms may refer in some cases to theactions and/or processes of a computer that manipulates and/ortransforms data into other data, said data represented as physical, e.g.such as electronic, quantities.

Embodiments of the present invention may use terms such as module,network, element, constituent, processor, architecture, computer,apparatus, system, sub-system, logic, component, function, unit, device,or variants thereof (in single or plural form) for performing theoperations described herein. These terms, as appropriate, refer to anycombination of software, hardware and/or firmware capable of performingthe operations as defined and explained herein.

The method(s)/process(es)/module(s) (or counterpart terms for example asspecified above) presented herein are not inherently related to anyparticular system or other apparatus, unless specifically statedotherwise. In some embodiments, various general purpose systems may beused with programs in accordance with the teachings herein, or it mayprove convenient to construct a more specialized apparatus to performthe desired method. The desired structure for a variety of these systemswill appear from the description below. In addition, embodiments of thepresent invention are not described with reference to any particularprogramming language. It will be appreciated that a variety ofprogramming languages may be used in certain embodiments to implementthe teachings of the invention as described herein.

Referring now to the drawings, FIG. 1 illustrates a network 100 forvideo e-commerce, according to an embodiment of the present invention.In the illustrated embodiment, network 100 includes the followinginter-coupled elements: clients (user devices) 190 of viewers (i.e.potential buyers), affiliate network system 160, affiliate web sites170, comparison pricing engine 180, inventory engine 186, vendor websites 150, vendor call centers 182, payment gateway 184, reporting andtracking system 140, rendering system 130, and publishing system 120.For simplicity of illustration, user access to publishing system 120,vendor website 150 and/or affiliate network system 160 is not explicitlyillustrated in FIG. 1 but will be described herein.

Depending on the embodiment, network 100 may comprise one or morecommunication networks of any appropriate type (e.g. Internet, Intranet,WAN, etc), may use one or communication protocols of any appropriatetype (e.g. IP, TCP, OSI, FTP, SMTP, WIFI, etc), and the elements may becoupled in any appropriate manner (e.g. Optical fiber, Ethernet,Wireless LAN, HomePNA, Power line communication, cell phone, PDA,Blackberry GPRS, Satellite (e.g. GPS), other mobile delivery, etc).Network 100 is not necessarily bound by the elements illustrated in FIG.1 and in some cases, network 100 may comprise fewer, more and/ordifferent elements than those illustrated in FIG. 1 and/or a particularelement may have more, less and/or different functionality thandescribed herein. For example, elements illustrated as being separatesystems in FIG. 1 may be part of the same system in other embodiments.As another example, in various embodiments certain elements may not berequired for a particular implementation of video e-commerce. Continuingwith the example, in one of these embodiments affiliate network system160, vendor call center 182, payment gateway 184, comparison pricingengine 180, vendor website 150 and/or inventory engine 186 may not beincluded in network 100. Each element in network 100 may be made up ofany combination of hardware, software and/or firmware capable ofperforming the operations as defined and explained herein.

Depending on the embodiment, there may or may not be commonownership/control of the various elements of network 100. The videoe-commerce facilitator facilitates video e-commerce by operating,directly or indirectly, at least one of the elements used inter-alia forcreating, selecting, operating and/or monitoring a video e-commercemodule. For example, the facilitator may directly operate at least oneof these elements, or may indirectly operate at least one of theseelements by outsourcing the operation of at least one of these elementsthrough any type of agreement. In the illustrated embodiment, reportingand tracking system 140, rendering system 130, inventory engine 186, andpublishing system 120 are operated by a video e-commerce facilitator,for example residing on server(s) of the facilitator and/or on theserver(s) of outsourcing party/ies, but in other embodiments, any ofthese elements may be operated by other entities. Herein below, the term“facilitator” should be understood to include either or both thefacilitator and any outsourcing parties, and the term “server(s) of thefacilitator” and the like should be understood to include server(s) ofthe facilitator and/or of any outsourcing party/ies, as appropriate tothe context. In the illustrated embodiment, it is assumed that theaffiliate network system 160, the affiliates 170, vendors (web sites 150and call centers 182), payment gateway 184, and comparison pricingengine 180 are operated by entities other than the video e-commercefacilitator but in other embodiments, the video e-commerce facilitatormay for example operate the affiliate network, the comparison pricingengine, the payment gateway, etc. Alternatively or additionally, forexample the facilitator may also be an affiliate, vendor, etc andtherefore operate any corresponding websites and/or call centers.

As illustrated in FIG. 1, within network 100, rendering system 130includes a selector 132 and a data repository 134. Reporting andtracking system 140 includes a tracking engine 142 and a reportingengine 144. In one embodiment, rendering system 130 resides on server(s)of the video e-commerce facilitator. Vendor web site 150 includes avendor webpage 152, public explorer 154, configurator 156, and vendoronline store 158. In the illustrated embodiment, public explorer 154 andconfigurator 156 are hosted on server(s) of the facilitator while theother constituents of vendor web site 150 are not. However in otherembodiments, the constituents may be hosted differently, for examplewith public explorer 154 and/or configurator 156 hosted on server(s) ofthe vendor. Affiliate network system 160 includes a custom affiliateexplorer 162, and a custom affiliate configurator 164. In oneembodiment, custom affiliate explorer 162 and custom affiliateconfigurator 164 can access video e-commerce modules which are hosted onserver(s) of the facilitator. The invention is not bound by thebreakdown of these elements of network 100 into the illustratedconstituents. In some cases an element may comprise fewer, more and/ordifferent constituents than those illustrated. In some cases thefunctionality described with reference to a particular constituent maybe performed additionally or alternatively by one or more otherconstituent. Each constituent may be made up of any combination ofhardware, software and/or firmware capable of performing the operationsas defined and explained herein.

FIG. 2 illustrates a method 200 for video e-commerce, according to anembodiment of the present invention. Method 200 will be described inconjunction with network 100. In some cases, method 200 may includefewer, more and/or different stages than illustrated in FIG. 2, thestages may be executed in a different order than shown in FIG. 2, stagesthat are illustrated as being executed sequentially may be executed inparallel, and/or stages that are illustrated as being executed inparallel may be executed sequentially.

In the illustrated embodiment of FIG. 1, publishing system 120 providescapabilities for inter-alia, creating, selecting and/or reviewing theperformance of a video e-commerce module. The users of the publishingsystem are not limited by the invention, and can include, for example,vendors, affiliates, registered users, and/or any users allowed by aparticular embodiment. As illustrated, publishing system 120 includesproduct uploader 102, playlist creator 104, playlist explorer 106,report configurator 108, system configurator 110, private explorer 112,video explorer 114, and report viewer 116. In one embodiment, publishingsystem 120 resides on server(s) of the facilitator. In one embodiment,users may access publishing system 120 via a webpage on a website of thefacilitator. Publishing system 120 is not necessarily limited to theconstituents illustrated in FIG. 1. In some cases publishing system 120may comprise fewer, more and/or different constituents than theillustrated constituents 102, 104, 106, 108, 110, 112, 114, and 116. Insome cases the functionality described with reference to constituent102, 104, 106, 108, 110, 112, 114, or 116 may be performed additionallyor alternatively by one or more other constituent. Each constituent 102,104, 106, 108, 110, 112, 114, or 116 may be made up of any combinationof hardware, software and/or firmware capable of performing theoperations as defined and explained herein.

In one embodiment, the video e-commerce module is a web widget, howeverthe invention is not thus limited. In one embodiment, the videoe-commerce module is based on the Adobe Flash Player platform andassociated ActionScript scripting language, however the invention is notthus limited. For example, in other embodiments, the video e-commercemodule may be based on Mobile, Silverlight, VB, C#, Java Applet, etc.

In stage 204, information on a product or service is inputted forexample via product uploader 102. Depending on the embodiment,information on a product/service may be inputted via product uploader102 in any appropriate manner. For example in one embodiment,product/service information may be entered manually. As another example,product/service information may be copied from a vendor system, forexample using a drag and drop procedure. Continuing with the example, insome cases the procedure may be based on XML and/or other API webservices. As another example, product/service uploader 102 may interfacewith a vendor system and retrieve product/service information.

In some embodiments, a video is associated with one or more productsand/or services. In some of these embodiments, as part of stage 204, aweb link (e.g. URL) to the associated video for example on a videosharing website (i.e. content distribution network) such as YouTube,Google video, etc., is entered via product uploader 102 into publishingsystem 120. For example, in one of these embodiments, the productuploader may then use the web link to connect to the video sharingwebsite and retrieve meta data associated with the video. Continuingwith the example, in some cases the meta data may include inter-alia anyof the following: title, tags and description relating to the video. Inother embodiments, the video itself may be uploaded via product uploader102 in stage 204. As an aside, it is noted that the video sharingwebsite may in some cases host videos on a backbone of a larger contentdistribution network such as Akamai and therefore the actual location ofthe video may be on a server of the larger content distribution network.

Assuming embodiments where a particular video is associated with aplurality of products/services, in one of these embodiments productuploader may also upload a mapping between the different segments ofthat video and the various associated products/services. For example,the beginning and ending elapsed times of each video segment, relatingto a different product/service, may be mapped to the associatedproduct/service.

The product/service information entered in stage 204 is not limited bythe invention and may comprise any type of information relating to theassociated video including any of the following inter-alia: video, videolink, video thumbnail, link to thumbnail, and/or video metadata. Foreach product/service associated with the video, the product/serviceinformation entered in stage 204 may comprise any type of informationincluding any of the following inter-alia: category identifier,product/service name, description, pricing, link to inventory engine186, picture or picture link, vendor information including vendoridentifier, reviews (professional and/or viewer), comments/tags, linkfor chatting with vendor online store 158, link for buying from vendoronline store 158, email address for sending an email to vendor onlinestore 158, link for talking with vendor call center 182, link tocomparison pricing engine 180, link to payment gateway 184, etc.

In some embodiments, some or all of the product/service informationentered in stage 204 is stored in the data repository 134 of therendering system 130. For example, any of the following inter-alia maybe stored: metadata on video, product/service name, description,pricing, link to inventory engine 186, category identifier, picture orpicture link, vendor information including vendor identifier,comments/tags, reviews (professional or viewer), link for chatting withvendor online store 158, link for buying from vendor online store 158,email address for sending an email to vendor online store 158, link fortalking with vendor call center 182, link to comparison pricing engine180, link to payment gateway 184, etc, may be stored in data repository134. As another example, depending on the embodiment, a link to theassociated video and/or link to video thumbnail on a video sharingwebsite may be stored in data repository 130, and/or or the associatedvideo and/or thumbnail may be stored in data repository 130. Forsimplicity of description it is assumed below that a link to the videois stored in data repository 130 and not the video itself.

As mentioned above the order of stages shown in FIG. 2 is notnecessarily the same for all embodiments. For example, stage 208 in somecases is performed next, either partly or fully, whereas in other casesstage 208 is performed right before stage 224. Continuing with theexample, in one embodiment, if stage 212 or stage 216 is executed thenstage 208 is performed fully or partially after stage 212/216 whereas ifstage 220 is executed then stage 208 is performed prior to stage 220.Nevertheless stage 208 is described now.

In stage 208, a video e-commerce module is configured using for example,system configurator 110. In some embodiments, there are features thatare always present in the e-commerce module and other features which maybe configured in stage 208. For example, in some of these embodiments,there is a generic e-commerce module which includes capabilities commonto all modules. Continuing with the example, common features may includein some cases any of the following inter-alia: video playingcapabilities, some or all aspects of the user interface, and/or logicwithin the module (for example allowing any of the following inter-aliaprocessing indications from a viewer, grabbing code, posting the module,navigating the menu, exploring the playlist, printing, calling and/orlinking to outside resources, providing information to a viewer, and/ortracking). Continuing with the example, in one of these embodiments,part of the common logic within the module allows the completion of apurchase transaction within the module. In embodiments with a generice-commerce module, in stage 208, a new video e-commerce module isconfigured by taking the generic video e-commerce module and selectingfeatures which are not necessarily common to all modules. Alternatively,in this embodiment the video e-commerce module may be configuredstarting with an already configured e-commerce module and furtheradapting some of the configurable features. For example, in some cases,configurable features may include any of the following inter-alia:autoplay of product/service videos/versus muted autoplay ofproduct/service videos, versus non-automatic play of product/servicevideos, automatic rotation of videos versus manual rotation or norotation, menus on versus menus off, price comparison on versus off,and/or appearance of the module (e.g. color, size, etc). In oneembodiment, some features may be left un-configured to be configured ata later stage (see below stage 232) or may be configured and lateroptionally re-configured (for example at stage 232).

A catalog of one or more products/services is associated with theconfigured video e-commerce module. It is assumed that all of theproducts/services in the catalog of products/services associated withthe video e-commerce module are inputted via product uploader 102 priorto the catalog being created. Depending on the embodiment, the catalogcan be created by playlist creator 104 as part of the procedure ofconfiguring the video e-commerce module, the catalog could have beencreated earlier and may be available for selection by playlist explorer106, or the catalog may be created in time to be accessible to a viewer.

Assuming the creation of catalog as part of the procedure of configuringthe video e-commerce module, in stage 212, the catalog, including avideo playlist, is created by playlist creator 104. In the illustratedembodiment, a feature of the catalog is that the catalog includesinter-alia video(s) or links to video(s), because video tends to providea rich multi-media experience of the product(s)/service(s), andtherefore in this embodiment a playlist of one or more videos is anintegral part of the catalog. In this embodiment, selection oridentification of a catalog inherently selects or identifies theincluded playlist, and vice versa. The catalog and included playlist canbe created manually or automatically, depending on the embodiment. Inthe manual creation mode, video(s) of product(s)/service(s) which havepreviously been inputted are available for exploring via video explorer114. For example, in one embodiment via video explorer 114, a user maybe presented with the meta data of an available video, with the name ofthe product(s)/service(s) associated with the video, with any otherproduct(s)/service(s) information, and/or with the opportunity to viewthe video (for example by clicking on a textual or icon link to a videosharing website). The user may thus select the product(s)/service(s) tobe comprised in the catalog (or equivalently the associated video(s) onthe playlist).

In some embodiments of the automatic mode of creation of catalog andincluded playlist, playlist creator 104 selects theproduct(s)/service(s)/associated video(s) and/or sequences the playingof the videos in the playlist based on criteria specified by a user, forexample vendor name(s); product/service category(ies); the maximum,minimum or exact number of product(s)/service(s) and/or video(s) to beselected; the maximum, minimum or exact number of vendor(s) to beselected; the maximum, minimum or exact number of product/servicecategory(ies) to be selected; desired level of performance (for examplebased on past tracking data), etc. In these embodiments, depending onthe embodiment the user may also specify the rules of the algorithm,choose from among available algorithm rules, or the algorithm rules maybe predefined by the facilitator. In other embodiments of the automaticmode, playlist creator 104 selects the product(s)/service(s)/associatedvideo(s) and/or sequences the playing of the videos randomly or based onan algorithm specified by the video e-commerce facilitator. In somecases when the algorithm is less defined by the user and more defined bythe facilitator, there may be a greater reliance on past experience(i.e. from tracking data) in selection of theproduct(s)/service(s)/associated video(s) and the sequencing the videos,but less customization to the user's preferences. In some cases, wherethere is random selection/sequencing of product(s)/service(s)/associatedvideo(s) to be included in the catalog (i.e. when a more experimentalapproach is taken), in some cases tracking engine 142 may collectstatistics on product(s)/service(s)/associated video(s) which on firstglance would not be assumed to perform well but may be found based onthe statistics to perform well or vice versa. Therefore it should beevident that there are advantages to various approaches of automaticcreation of the catalog with tradeoffs between user customization,reliance on past experience, and experimentation.

In another embodiment, a pre-existing catalog/playlist (i.e. which isstored in data repository 130) is selected via playlist explorer 106 instage 216. For example, the user may input a playlist/catalog identifiervia playlist explorer 106. As another example, the user may specifycriteria such for example, as vendor name(s), highest performer(s)(based on tracking data), and/or category/(ies) of product(s)/service(s)and playlist explorer 106 may then present the user with thecatalog/playlist which includes product(s)/service(s) that match thecriteria.

In another embodiment, the video e-commerce module is configured instage 220, for example via configurator 110, to enable run-timegeneration of the catalog and the included playlist.

In another embodiment a catalog/playlist is selected in stage 216 orcreated in stage 212, and in stage 220 the video e-commerce module isconfigured to enable run-time modification of the created or selectedcatalog/playlist.

For example, there may be parameter called herein below “vsense” whichin stage 220 is disabled if run-time generation/modification is notdesired and enabled if run-time generation/modification is desired.

Depending on the embodiment there may be a higher or lower level ofcustomization in stage 220 of a generation/modification algorithm whichwill be executed in run-time for selectingproduct(s)/service(s)/associated video(s) for the catalog/playlistand/or for video sequencing. For example, in one embodiment there may beno customization based on the configured video e-commerce module, andthe algorithm will be randomly determined or the algorithm may have beenpredefined for selector 132 by the facilitator. For example, in somecases random selection/sequencing of product(s)/service(s)/associatedvideo(s) to be included in the catalog (i.e. experimentation) may allowtracking engine 142 to collect statistics onproduct(s)/service(s)/associated video(s) which on first glance wouldnot be assumed to perform well but may be found based on the statisticsto perform well or vice versa. In embodiments where there is nocustomization based on the configured module, the same algorithm may beexecuted for each module, or different algorithms may be executed fordifferent modules but with the differences in the algorithms independentof the various configurations of the different modules. As anotherexample, in one embodiment, the algorithm rules may not be configured instage 220 (e.g. the rules may have been predefined for selector 132 bythe facilitator) but at least some of the (e.g. selection and/orsequencing) criteria required for execution of the algorithm may beconfigured (i.e. customized) in stage 220. Examples of algorithmcriteria which may be configured in this embodiment include any of thefollowing inter-alia: the vendor name(s); product/service category(ies);the maximum, minimum or exact number of product(s)/service(s) and/orvideo(s) to be selected; the maximum, minimum or exact number ofvendor(s) to be selected; the maximum, minimum or exact number ofproduct/service category(ies) to be selected; etc. Examples of algorithmcriteria which are less likely to be configured in stage 220 of thisembodiment include any of the following inter-alia: website keywords,viewer data, and/or uncontrollable variables (e.g. time of day, weather,day of week, etc. of algorithm execution). If the algorithm relies atleast partly on tracking data (e.g. the number of “buy it now” clickcounts, or the number of view counts for a product/service/video), thenthe type(s) of tracking data to be relied upon in the algorithm may ormay not be configured in stage 220 of this embodiment. As anotherexample, in one embodiment, a user may select from among differentavailable algorithms and configure the algorithm identifier (i.e.associate the algorithm identifier with the module) in stage 220. Inthis embodiment, the user may or may not also configure the algorithmcriteria. As another example, in one embodiment, the user may configurethe rules of the algorithm in stage 220. In this embodiment, the usermay or may not also configure the algorithm criteria. In some cases,when the algorithm is less customized and more defined by thefacilitator, there may be a greater reliance on past experience (i.e.from tracking data) in the selection of theproduct(s)/service(s)/associated video(s) and the sequencing the videos.There are therefore advantages to various approaches to thegeneration/modification algorithm with tradeoffs between usercustomization, reliance on past experience, and experimentation.

In one embodiment, where stage 208 occurs at least partly during orafter the creation or selection of the catalog/playlist in stage 212 or216, after the playlist has been created or selected a user configureswhich video will be the first to be played from the playlist, forexample by specifying the video identifier of the first-to-play video.

In stage 224, the video e-commerce module is stored in data repository134. For example, in some embodiments, data repository 134 may bestructured by entries with one entry defining the current videoe-commerce module including an identifier of the current videoe-commerce module, features of the generic video e-commerce module,features configured for the current video e-commerce module, theplaylist identifier (which inherently also identifies the catalog) if aplaylist was selected or created, and if run-timegeneration/modification of the playlist was enabled then in some casesthe algorithm rules and/or criteria for run-timegeneration/modification. In turn, each playlist/catalog identifiercorresponds to an entry which includes a list of identifiers for all thevideos on the playlist, for example in the order that the videos are tobe played. The entry may include video sequencing information, forexample always, or only if the list of video identifiers is not in theorder that the video are to played. Continuing with this example, in oneof these embodiments, each video identifier corresponds to an entrywhich includes any of the following inter-alia: a link to the video forexample on the video sharing website, a link to the video thumbnail onthe video sharing website and/or the thumbnail itself, meta data on thevideo, and one or more identifiers of products/services associated withthe video. In this embodiment, each product/service identifiercorresponds to an entry which includes any of the following inter-alia:product/service information such as name, description, categoryidentifier, pricing, link to inventory engine 186, picture(s) or picturelink(s), vendor information including vendor identifier, reviews(professional and/or viewer), comments/tags, link for chatting withvendor online store 158, link for buying from vendor online store 158,email address for sending an email to vendor online store 158, link fortalking with vendor call center 182, link to comparison pricing engine180, link to payment gateway 184, etc. In another of these embodimentsfor this example, where a video corresponds to only one product/service,all the data on the video and the product/service may be included in thesame entry, for example including any of the following inter-alia anidentifier of the video/product/service, link to video, link to videothumbnail and/or thumbnail itself, metadata on video, product/servicename, description, pricing, link to inventory engine 186, picture(s) orpicture link(s), vendor information including vendor identifier, reviews(professional and/or viewer), comments/tags, link for chatting withvendor online store 158, link for buying from vendor online store 158,email address for sending an email to vendor online store 158, link fortalking with vendor call center 182, link to comparison pricing engine180, link to payment gateway 184, etc. It is noted that the variousproduct/service/video entries may have already been created in stage204. If the catalog/playlist was created in stage 212 then thecatalog/playlist entry would also need to be stored in data repository134, for example in stage 224. However, if a pre-existingcatalog/playlist was selected in stage 216 then the catalog/playlistentry would have been stored earlier, at the time of the originalcreation of the catalog/playlist.

It should be understood that a catalog can include one or moreproduct(s) and/or service(s) and the playlist can include one or morevideo(s). In some cases where the playlist includes one video, theplaylist identifier may be replaced by the video identifier andtherefore the video e-commerce module entry in data repository 134 mayinclude the associated video identifier rather than the playlistidentifier. In other cases, the video e-commerce module entry includesthe playlist identifier regardless of the number of videos in theplaylist.

In some cases, the video e-commerce module entry in data repository 134may include both the playlist identifier and a video identifier whichidentifies the first video on the playlist to play.

Once the video e-commerce module has been stored in data repository 134,the module is available for selection in stage 228. For example, a usermay browse available video e-commerce modules via a private explorerwebpage 112 of publishing system 120 and select an available videoe-commerce module. As another example, a user may browse videoe-commerce modules by accessing a vendor web page 152 of a vendor website 150 which references a public explorer page 154. As mentionedabove, in some cases in this example public explorer page 154 may behosted on a server of the video e-commerce facilitator. Continuing withthe example, in some cases only video e-commerce modules with arelationship to the vendor may be available via the vendor web page(e.g. associated catalog includes product/service of that vendor, ore.g. identifier of vendor or category of vendor's products/servicesspecified for run-time generation/modification of catalog/playlist,etc). As another example, a user may browse available video e-commercemodules among all offerings of affiliate network 160 using affiliateexplorer 162. Examples of currently available affiliate networks includeinter-alia CJ.com and linkshare.com. Depending on the embodiment, it mayor may not be evident to the user that an explorer page is hosted on aserver of the video e-commerce facilitator, and for example in oneembodiment public explorer page 154 when hosted by the facilitatorserver may still appear to be part of vendor web site 150.

The user in one embodiment who is selecting the module may be anaffiliate who wishes to publish the module on a website thereof andthereby participate in the video e-commerce. (Hence affiliates are alsoknown as “publishers”). There is no limitation however on the nature ofthe user, and non-affiliate users in some embodiments may also be ableto access video e-commerce modules and/or select such modules. Forsimplicity of description, it is assumed below that the user who selectsthe module is an affiliate or that the selection is performed on behalfof an affiliate.

In stage 232, the corresponding configurator (for example configurator110, configurator 156, or configurator 164) is used to furtherconfigure/re-configure the selected video e-commerce module. Forexample, an identifier of the user who selected the module (for examplean affiliate code) may be associated with the module. In some cases ofthis example, if the user is a registered user then the identifier maybe known to the corresponding configurator, but if the user is not aregistered user then the user may have to manually input the identifier.In some embodiments of this example, the affiliate code allows theaffiliate to receive compensation for certain action(s) of a viewer ofthe module on a website of the affiliate and thereby participate in thevideo e-commerce. In one of these embodiments, the affiliate code isembedded in the link for buying from vendor online store 158 (i.e. “buyit now link”) and possibly in other links to the vendor so that thevendor can properly compensate the affiliate. As another example,certain features of the module may be configured or reconfigured instage 232 including any of the following inter-alia: autoplay ofproduct/service videos versus muted autoplay of product/service videos,versus non-automatic play of product/service videos, automatic rotationof videos versus manual rotation versus no rotation, menus on versusmenus off, price comparison on versus off, and/or appearance of themodule (e.g. color, size, etc).

In stage 236, the video e-commerce module is published on (i.e.associated with) the website 170 of the affiliate. The type of websiteis not limited by the invention. In some embodiments, the module ispublished on an affiliate webpage which includes data unrelated to themodule. Examples of such WebPages include inter-alia: a blog 172, ageneric website 174, a search engine 175, a social platform (e.g.Facebook) 176, etc. In others embodiments, publishing includes devotingan entire webpage to the module. For example, in one of theseembodiments, instead of having an underutilized or expired domain(“parked domain”) contain advertisement listings and links, or redirectto another website, a video e-commerce module can be published on theparked domain 178. Parked domain 178 will then function as a shoppingnetwork. For the sake of illustration, in FIG. 1, video e-commercemodules are shown “published” on various WebPages 172, 174, 175 176,178.

In one embodiment, it may be possible for a (first) affiliate to view amodule on a webpage of a second affiliate (for example see “grab code”or “post code” feature of the module described below with reference toFIG. 4) and decide to also publish that module. The (first) affiliatemay then select the viewed module (stage 228) and change the currentaffiliate code (stage 232) from the affiliate code of the secondaffiliate to the affiliate code of the (first) affiliate prior topublishing the module on the website of the (first) affiliate in stage236.

The video e-commerce module may be published in any appropriate mannerand by any appropriate means. For example, in one embodiment, publishingmay include a simple copy command (see for example “grab code” featureof module described below) and a paste command to publish the module ona target webpage. As another example, in one embodiment, the module mayinclude a “post module” interface (see below description of modulefeatures) within the module which allows the publishing of the module ona target webpage. As another example, alternatively or additionally, anapplication programming interface API of the target website may servicethe request to publish the module. Continuing with the example, theaffiliate may be required to provide identification such as user nameand password prior to being allowed to publish the module on a webpage.

In the illustrated embodiment, once the video e-commerce module has beenpublished on (i.e. associated with) a webpage, the associated webpageincludes information which allows a browser when loading the associatedwebpage to load the module which resides on facilitator server(s) (seestage 240). For example, the included information can include any of thefollowing inter-alia module identifier, link to facilitator server(s)where data repository 130 including the module resides, etc. In thisembodiment, stage 232 activity may also be reflected on the associatedwebpage during the publishing stage of 236 and/or may be reflected inthe data on the module which is stored in data repository 130, dependingon the particular implementation. It is possible however, that in otherembodiments the video e-commerce module once published, resides on aserver of the affiliate website and is therefore loaded by the browserfrom the affiliate server.

In stage 240, the web-browser of a viewer accesses the webpage on whichthe module has been published and therefore loads the video e-commercemodule onto the client 190 (i.e. onto the user device of the viewer).For the sake of illustration, the video e-commerce module is shown inFIG. 1 “loaded” onto user device 190 of the viewer. In some embodiments,the video e-commerce module is adapted to conform to the type of client190, for example computer versus mobile telephone. In one of theseembodiments, the adaptation is based on browser type as provided by thebrowser.

In stage 244, the video e-commerce module, once loaded, provides to aselector 132 one or more parameters which allows selector 132 toretrieve the catalog/playlist associated with the module and return thecatalog/playlist in stage 252 to the video e-commerce module. In oneembodiment, selector 132 is assisted by an API, for example a webservice. In some cases, if creation/modification is enabled, selector132 creates or modifies the catalog/playlist to be retrieved based onthe parameter(s) (stage 248). In other cases an identifier of thecatalog/playlist to be retrieved is provided as a parameter to selector132.

Refer to FIG. 3 which illustrates a method 300 executed by selector 132corresponding to stages 244, 248 and 252, according to an embodiment ofthe present invention. In some cases, method 300 may include fewer, moreand/or different stages than illustrated in FIG. 3, the stages may beexecuted in a different order than shown in FIG. 3, stages that areillustrated as being executed sequentially may be executed in parallel,and/or stages that are illustrated as being executed in parallel may beexecuted sequentially.

In stage 302, the video e-commerce module which has been loaded ontoclient 190 calls selector 132. In the illustrated embodiment, it isassumed that parameter(s) identifying the catalog/playlist or which caninfluence the selection of the catalog/playlist is provided to selector132. For example, if a playlist identifier or video identifier has beenassociated with the module, then the identifier is provided to selector132 in stage 306. As another example, additionally or alternatively,keywords of website 170 (where the module was published) may be providedto selector 132 in stage 310. Continuing with the example, in oneembodiment, the video e-commerce module has the functionality tointerrogate the document object module of the browser in order toreceive the keywords. These keywords may in some cases allow selector132 to create/modify a catalog (including a playlist) which is anappropriate fit with the content of website 170. As another example,additionally or alternatively, if selection and/or sequencing criteriahave been specified during configuration of the module (for example instage 220), then the criteria are provided to selector 132 in stage 314.As another example, additionally or alternatively if algorithm rules hadbeen specified during configuration of the module (for example in stage220), then the rules are provided to selector 132. As another example,additionally or alternatively, the value of the “vsense” parameter maybe provided in stage 314, specifying whether or not run-timegeneration/modification of the catalog/playlist is enabled or disabled.

In some embodiments, the video e-commerce module may also provide dataon the viewer to selector 132. In one of these embodiments, viewer datamay be derived without the viewer actively disclosing information. Forexample geo-data on the viewer (e.g. the geographic location of theviewer) may be derived from the IP address and/or other data of client190. In another embodiment, additionally or alternatively, viewer datamay be provided explicitly by the viewer. Continuing with thisembodiment, in some cases the viewer may register with the videoe-commerce facilitator, specifying information which can be used tocustomize the catalog (and included playlist) to the preferences of theviewer. Continuing with this embodiment, in some cases, the viewer mayregister via system configurator 110, configurator 156 or customaffiliate configurator 164. For example, the viewer may specify thecategories of products/videos and/or the vendors from which the vieweris interested in buying. The viewer specified data may be stored onclient 190 (for example in a cookie) and provided by the videoe-commerce module to selector 132 after the module has been loaded ontothe client. Alternatively, the viewer specified data may be stored indata repository 134 (i.e. in this embodiment data repository 134 mayalso include viewer entries) and retrieved by selector 132 after havingidentified the viewer. For example, during the registration process, anidentifier of the viewer may be established which can be transmitted bythe video e-commerce module after the module has been loaded onto client190.

In the illustrated embodiment in stage 318, selector 132 determineswhether the received “vsense” parameter is enabled and therefore runtime generation or modification of the catalog/playlist is desired.

If the “vsense” parameter is enabled then in stage 322, selector 132selects the products/services for the catalog (or equivalently theassociated video(s) on the playlist) and sequences the video playing. Asmentioned above with reference to stage 220, there may be differentlevels of customization of the algorithm for selection of theproducts/services for the catalog and the associated video(s) for theplaylist, and for the sequencing of the video playing.

There are many possible algorithms which can be executed by selector132. The algorithm shown in stage 322 is only one example of a possiblealgorithm and should therefore not be considered to bind the invention.In the algorithm illustrated in stage 322, selector 132 retrieves thetop N videos from data repository 134, where one of the keywords appearsin the tag field of at least one (or all) of the products/servicesassociated with the video or in the description field of at least one(or all) of the products/services associated with the video and wherethe vendor identifier and category identifier of at least one of theproducts/services associated with the video (or where the vendoridentifier and category identifier of all of the associatedproducts/services) match one of the vendor identifiers and categoryidentifiers provided to the selector in stage 314. Selector 132 thensequences the top N videos using tracking data including “buy itnow/checkout click count” and/or “view count” so that the video with thehighest count for sales and/or views is sequenced to be played first. Inone embodiment, where a video is associated with multipleproducts/services the tracking data is totaled for all the associatedproducts/services, whereas in another embodiment the tracking data isfor one of the associated product/services, for example the firstproduct/service mentioned in the video.

In the illustrated embodiment, for the first retrieved record (i.e. forthe retrieved entry of the first sequenced video) in stage 324, becauseno temporary playlist exists (no to stage 328), a temporary playlist iscreated in stage 332. In stage 336, the video identifier is added to thecreated temporary playlist. For each subsequent retrieved record, thecorresponding video identifier is also added to the created temporaryplaylist in a subsequent round of stage 336. When all N records havebeen retrieved (yes to stage 342), the data in data repository 134 whichcorrespond to the N records is retrieved, and the total data (i.e. thecreated catalog which includes the created playlist) is returned to thevideo e-commerce module in stage 348. In stage 352, the temporaryplaylist may be deleted if desired. Method 300 then ends.

If alternatively, “vsense” is disabled (no to stage 318), selector 132determines in stage 356 if the playlist identifier had been provided. Ifa playlist identifier has not been provided, a video identifier willhave been provided (stage 360). Therefore in stage 364, selector 132returns to the video e-commerce module the data relating to the singlevideo from data repository 134 and method 300 ends. In this case theplaylist will comprise one video and therefore the catalog will relateto the product(s)/service(s) associated with the single video

If the playlist (or equivalently catalog) identifier has been provided(yes to stage 356), then in stage 368 selector 132 returns to the videoe-commerce module the data from data repository 134 relating to eachvideo on the identified playlist (i.e. returns a catalog) and method 300ends.

For each video, the data returned in stage 348, 364, or 368 may includeany of the following inter-alia: a link to the video for example on thevideo sharing website, a link to the video thumbnail and/or thumbnailitself, and meta data on the video. The sequencing of the videos mayalso be indicated. For each of the products/services associated with aparticular video the data returned in stage 348, 364, or 368 may includeany of the following inter-alia: product/service information such asname, description, pricing, link to inventory engine 186, picture(s) orpicture link(s), vendor information, product/service (or video)identifier, category identifier, comments/tags, reviews (professionaland/or viewer), link for chatting with vendor online store 158, link forbuying from vendor online store 158, email address for sending an emailto vendor online store 158, link for talking with vendor call center182, link to comparison pricing engine 180, link to payment gateway 184,etc.

In some cases, the catalog (and included playlist) returned in stage348, 364, or 368 may also include any links to related live video feedswhich are currently being captured or are scheduled to be capturedwithin the near future (for example within ten minutes or within theperiod that a viewer is expected to interact with the module), withthese live video feeds also sequenced within the returned playlist. Thelive feed(s) link may for example link to the source of the videostreaming directly or via vendor web site(s) 150. The related live videofeed(s), for example may be consistent with products/services retrievedfrom data repository 134 as part of the catalog, the categories of theretrieved products/services in the catalog, the vendors of the retrievedproducts/services in the catalog, the website keywords, the viewerspecified information, etc.

In another embodiment, where the video e-commerce module is stored onthe affiliate server upon publishing, the data constituting the catalogand included playlist may be stored on a server of affiliate website 170soon after the video e-commerce module is published on website 170. Forexample, similarly to method 300 but occurring once the video e-commercemodule is published on website 170, the catalog/playlist may be createdon the fly by selector 132 or the playlist identifier/video identifiermay be passed to selector 132. The data retrieved from data repository134 (i.e. the catalog and included playlist) is provided to and storedon an affiliate server, for example the same affiliate server whichhouses the video e-commerce module. The data retrieved and stored mayinclude any of the following inter-alia for each video: a link to thevideo for example on the video sharing website, a link to the videothumbnail and/or thumbnail itself and meta data on the video. Thesequencing of the videos may also be indicated. For each of theproducts/services associated with a particular video the data retrievedand stored may include any of the following inter-alia: product/serviceinformation such as name, description, pricing, link to inventory engine186, picture(s) or picture link(s), vendor information, product/service(or video) identifier, category identifier, comments/tags, reviews(professional and/or viewer), link for chatting with vendor online store158, link for buying from vendor online store 158, email address forsending an email to vendor online store 158, link for talking withvendor call center 182, link to comparison pricing engine 180, link topayment gateway 184, etc. In this embodiment, the retrieved data whichis stored on the affiliate server may be downloaded to client 190 (i.e.received at client 190) when the video e-commerce module is loaded tothe browser.

Refer to FIG. 4 which illustrates components within the video e-commercemodule, according to an embodiment of the present invention. In theillustrated embodiment, the components include VOIP click to call 404,Instant Messaging IM live chat 408, email vendor 410, click for callback 412, checkout via module 416, countdown 420, grab code 424, postmodule 428, send to a friend 432, log in 434, price comparison 436,explorer 440, save video 442, photos 444, reviews 448, comments 452,product/service details 456, buy it now redirect 460, advertisementbanner 464, menu navigator 468, video player and controls 472, livestream 476, and print 480. The video e-commerce module is notnecessarily bound by the components illustrated in FIG. 4. Theparticular breakdown of the video e-commerce module into componentsshown in FIG. 4 was chosen for ease of explanation, but it should beevident that in some cases the video e-commerce module may comprisefewer, more and/or different components than those illustrated in FIG.4, and/or a particular component may have more, less and/or differentfunctionality than described herein. Each component of the videoe-commerce module may be made up of any combination of hardware,software and/or firmware capable of performing the operations as definedand explained herein. In one embodiment, certain components of thevideo-e commerce module are activated after the catalog and includedplaylist (or single video link) has been received at client 190 and/orupon indication by the viewer.

For example, in the illustrated embodiment, the video player andcontrols component 472 provides the capability to play videos on theplaylist of the catalog (or the one video whose episode (video)identifier was instead identified) and optionally any of the followingfunctions inter-alia: rewind, fast forward, stop, pause, volume, replayvideo skip to next video, go back to previous video, etc. In oneembodiment, the video player is a flash video player. If there is aplaylist of more than one video, the first video to play may have beenconfigured manually or selected automatically, as discussed above. Thevideos (for example, depending on the module configuration) may beginplaying automatically once the playlist or single video link has beenreceived at client 190, begin playing automatically but are muted, ormay only play upon viewer request (i.e. the activation trigger forplaying may vary depending on the embodiment).

Referring to stage 256 of method 200, each time a video is played byvideo player 472, the video link (which was previously received as partof the playlist or as a single video link by client 190) is passed tothe location where the video resides and the video stream (for examplestreamed flash video) is returned to the video e-commerce module. In oneembodiment, the video e-commerce module includes a buffer in order topreload a certain amount of stream video before playing the video. Inone embodiment the content distribution network ensures quality ofservice based on factors such as bandwidth, location of server (wherevideo resides) and client (of viewer), network congestion, etc. as isknown in the art.

Besides the playing of the videos, the video e-commerce module performsadditional functionality for the viewer in stage 260. This additionalfunctionality is also described with reference to FIG. 4.

In the illustrated embodiment, the viewer has the option to browse theplaylist via playlist explorer 440. The viewer can thus select a videoto play out of sequence from the sequence previously established. Insome cases, playlist explorer 440 includes a slide bar for easyreviewing thumbnail previews of videos on the playlist. In some cases,playlist explorer 440 continually provides the viewer with preview(s) ofthe next video(s) on the playlist.

In the illustrated embodiment, the viewer has the option to save anyvideo, for example that is currently playing or any one from theplaylist using the save video component 442. In some cases, the savedvideos can be browsed by logging in, for example via publishing system120 or logging in from any video e-commerce module and clicking on “mysaved videos”, which will cause save video component 442 to show thesaved videos. In this way, the viewer can create his own video shoppingsite of the videos he has saved. In some cases, the product/serviceidentifier for each product/service associated with the saved video isalso saved so that information on the product/service(s) can be returnedfrom data repository 130 upon viewer request. As noted above, in somecases when a video is associated with only one product/service the videoidentifier may also identify the product/service and therefore in thesecases the video identifier may be saved instead in order to later beable to retrieve information on the product/service from data repository130. In some cases, when the viewer views the saved video, additionalfunctionality as described with respect to one or more of the componentsof FIG. 4 may also be available to the viewer, relating to the savedvideo.

In the illustrated embodiment, the viewer has the option via “livestream” component 476 to select from among currently playing live videoshows, to call in to the live show, and to receive the live videostream. In some cases, the viewer can only select from among relatedlive video shows (e.g. consistent with any of the following:products/services in catalog, the categories of those products/services,the vendors of those products/services, the website keywords, the viewerspecified information, etc.) but in other cases the viewer can selectfrom any live video show. Depending on the embodiment, the viewer may beconnected to the source of the live streaming directly or via vendor website(s) 150.

In the illustrated embodiment, menu navigator 468, allows the viewer tobrowse through different options available to him or her. For example,in some cases, options which are heavily promoted or considered to beessential for video e-commerce can be selected by a viewer withouttraversing menu navigator 468 (for example with a separate controldisplayed on the user interface), whereas other options which are not asheavily promoted or not considered to be essential may be selected bytraversing menu navigator 468. Continuing with the example, in oneembodiment, “checkout via module” or “buy it now redirect” as well asvideo playing and controlling are heavily promoted options whereas theother options are available for selection through the menu navigator. Inone embodiment, the display of the menu is configured on or off in stage220 or stage 232 but may be later be turned off or on by the viewer.

In the illustrated embodiment, “grab code” component 424, “post module”component 428, “send to a friend” component 432, and/or “log-in”component 434 allow the viewer to manipulate the video e-commerce modulefor purposes unrelated to the catalog. For example, if the viewerchooses to “grab code”, grab code component 424 copies the videoe-commerce module. Optionally, grab code component 424 also requests theaffiliate code of the viewer so that the current affiliate codeassociated with the module can be changed to the affiliate code of theviewer. The viewer can then paste the module (grabbed code), optionallywith the changed affiliate code on a webpage affiliated with the viewer.As another example, if the viewer chooses to “post module”, post modulecomponent 428 requests the URL of the target web page (for example blog,generic website, social platform, parked domain or search engine, etc.)and automatically publishes the module to that web page, changing theaffiliate code to correspond to the affiliate code of the viewer.Continuing with the example, in some cases if the viewer is a registereduser, the affiliate code of the viewer may be known, whereas in othercases the viewer may manually enter his affiliate code. In oneembodiment, post module component 428 may call a distribution systemsuch as for example gigya.com to publish the module. See alsodescription of stage 236 above relating to “grab code” and “post code”.As another example, if a viewer chooses to send the module to a friend,send to a friend component 432 will generate an email which will includea link to the video e-commerce module. The “friend” can press on thelink in the email and be directed to the video e-commerce module. Asanother example, a log in component 434 allows a viewer to log intopublishing system 120 from any video e-commerce module. Depending on theembodiment, some or all of the features of publishing system 120 may beaccessible to the viewer via log in component 434. For example, in oneembodiment, log in via a module may only allow access to reports and notto the other features of publishing system 120. In these examples (grabcode, post code, send to a friend, and log in), the viewer is notnecessarily a potential buyer, but may in some cases be instead anaffiliate or potential affiliate, a vendor, etc.

In the illustrated embodiment certain components of the video e-commercemodule allow the viewer to view different types of data in the catalog.For example, photos component 444, reviews component 448, commentscomponent 452, and/or details component 456 outputs data on theproducts/services which was previously returned by selector 132. Forexample photos component 444 displays photos of products/services;reviews component 448 visibly and/or audibly outputs reviews (byprofessionals and/or viewers) of products/service; comments component452 visibly and/or audibly outputs comments/tags on products/services;details components 456 visibly and/or audibly outputs details onproducts/services such as price, short description, if theproduct/service is a “hot deal” or “top seller”, specifications, etc. Insome cases, the specifications may be available as a download (e.g. PDF)in addition to or instead of within the module. In one embodiment, aviewer indicates the product/service (among those in the catalogreturned by selector 132) for which the viewer wishes to receiveinformation (e.g. photos, reviews, comments, countdown, details, etc).In other embodiments, when a viewer selects photos, reviews, comments,details, etc, the data corresponding to the currently playing video (orif no video is playing then the previous or next video on the playinglist) is provided. For example, if video #3 on the playlist is currentlyplaying, and the viewer indicates a desire for photos, a photo orphoto(s) of the product/service corresponding to video #3 is provided tothe viewer by photos component 444. As another example, if video #4 onthe playlist is currently playing, and video #4 on the playlist relatesto two products/services, then in one of these embodiments, the viewermay select whether photos are desired for both products/services orindicate for which products/service photo(s) are desired, whereas inanother of these embodiments the viewer may be presented with one ormore photos relating to the product/service corresponding to thecurrently playing segment of video #4. In the latter embodiment, themapping between the different segments of the video and the variousassociated products/services discussed above may enable photo component444 (or, similarly for other types of data, may enable any of components448, 452, and/or 456) to determine the currently correspondingproduct/service.

In one embodiment, a viewer may also use photos component 444, reviewscomponent 448, comments component 452, and/or details component 456 toinput data, for example photos, reviews, comments/tags, etc. In thisembodiment, the inputted data may be saved to data repository 134, forexample by way of tracking engine 142. In some cases, reviews components448 may present the viewer with forms and/or polls (i.e. surveys) tofill out, and the filled out information may be saved to data repository134, for example by way of tracking engine 142.

In the illustrated embodiment, a viewer may also get (“external”)information which was not provided by selector 132, for example via VOIPclick to call component 404, IM live chat component 408, email vendorcomponent 410, click for callback component 412, countdown component420, or price comparison component 436. For example, VOIP click to callcomponent 404 provides the viewer with the capability of participatingin a call over the Internet with another party, for example vendor callcenter 182. Depending on the embodiment, the VOIP call may or may notuse other communication networks such as PSTN and cellular in additionto the Internet. As another example, IM live chat component 408 providesthe viewer with the capability of participating in an online chatsession with another party, for example vendor online store 158. In somecases, IM live chat component 408 may additionally or alternativelyallow the viewer to see the vendor live on video and see live productdemonstrations. As another example, email vendor component 410 providesthe viewer with the capability of sending an email to vendor onlinestore 158. In some cases, the viewer may fill out a form within themodule including any of the following inter-alia: his name, emailaddress, subject matter of the email (for example chosen from a dropdown list), message text (e.g. question) etc, and press a send button tosend the message. In some cases, the viewer may receive a confirmationemail that the email was received and that the vendor will replyshortly. As another example, click for call back component 412, providesthe viewer with the capability of receiving a callback from anotherparty, for example from vendor call center 182, to a phone numberdefined by the viewer, optionally at a time specified by the viewer. Inthis example, the viewer may in some cases fill out a form within thevideo e-commerce module including any of the following inter-alia: name,phone number, subject matter (for example chosen from a drop down list),message text (e.g. question), etc. As another example, countdowncomponent 420 provides the viewer with a feed from inventory engine 186that includes data such as quantity of product/service left ininventory, time left to make a purchase at a particular price level orat all, quantity of the product/service sold, etc. As another example,price comparison component 436 provides the viewer with a feed from aprice comparison company with comparative pricing information, such asPronto.com.

In one embodiment, a viewer indicates the product/service (among thosein the catalog returned by selector 132) for which the viewer wishes toreceive external information (for example by VOIP, chat, email,callback, inventory feed, price-comparison feed). In other embodiments,when a viewer selects VOIP click to call, IM live chat, email to vendor,click for callback, countdown, or price comparison, the feature isactivated for the product(s)/service(s) corresponding to the currentlyplaying video (or if no video is playing then the previous or next videoon the playing list). For example, if video #5 on the playlist iscurrently playing, and the viewer indicates a desire for VOIP call, aVOIP call will be initiated by VOIP click to call component 404 with thevendor call center for the product/service corresponding to video #5. Asanother example, if video #6 on the playlist is currently playing, andvideo #6 on the playlist relates to five products/services, then in oneof these embodiments, the viewer may select whether a VOIP call isdesired for all the related products/services or an indicated subset ofthe five products/services, whereas in another of these embodiments aVOIP call may be initiated to the vendor call center for theproduct/service corresponding to the currently playing segment of video#6. In the latter embodiment, the mapping between the different segmentsof the video and the various associated products/services discussedabove may enable VOIP click to call component 404 (or in similarembodiments, component 408, 410, 412, 420, or price comparison component436) to determine the currently corresponding product/service.

In the illustrated embodiment, the viewer may purchase products/servicesin the catalog via buy it now redirect component 460 and/or checkout viamodule component 416. For example, the buy it now redirect component 460redirects the viewer to vendor online store 158 (in accordance with thereceived link for buying from vendor online store 158—i.e. the “buy itnow link”) in order to complete the transaction for thatproduct/service. As another example, check out via module component 416allows the viewer to complete the transaction by way of the videoe-commerce module without being redirected to another website.Continuing with the example, in one embodiment, checkout component 416includes any of the following capabilities inter-alia for completing thetransaction: communicating with inventory engine 186, adding aproduct/service to cart; receiving from inventory engine 186 inventoryinformation; indicating to inventory engine 186 to reduce quantity ofremaining inventory and/or increase quantity sold; receiving payment anddelivery information from the viewer or deriving this information, forexample from a stored cookie on client 190; communicating with paymentgateway 184 for payment approval and charging of viewer; communicatingthe product/service delivery information to vendor online store 158 orto whichever entity is responsible for delivery, etc. Depending on theembodiment, the payment gateway 184 may allow payment through variousoptions including any of the following inter-alia: Google checkout,paypal, and credit card.

In one embodiment, a viewer indicates the product/service (among thosein the catalog returned by selector 132) that the viewer wishes to buy(for example using buy it now redirect or using checkout via module). Inother embodiments, when a viewer selects buy-it now redirect or checkoutvia module, the feature is activated for the product(s)/service(s)corresponding to the currently playing video (or if no video is playingthen the previous or next video on the playing list). For example, ifvideo #7 on the playlist is currently playing, and the viewer indicatesa desire for checkout via module, checkout via module component 416completes the transaction for the product/service corresponding to video#7. As another example, if video #8 on the playlist is currentlyplaying, and video #8 on the playlist relates to threeproducts/services, then in one of these embodiments, the viewer mayselect whether checkout is desired for all the related products/servicesor an indicated subset of the three products/services, whereas inanother of these embodiments checkout may be initiated for theproduct/service corresponding to the currently playing segment of video#8. In the latter embodiment, the mapping between the different segmentsof the video and the various associated products/services discussedabove may enable checkout component 416 to determine the currentlycorresponding product/service.

In some embodiments, each time the video e-commerce module puts a viewerin touch with a vendor for more information (for example, VOIP, chat,email, callback) and/or results in a viewer buying a product/service(for example buy it now redirect or checkout via module), the affiliatecode (of the affiliate from whose website 170 the module was loaded ontoclient 190) is transferred to the vendor. For example, the affiliatecode may be embedded in a link to the vendor or may be sent separately.In this way, the vendor can appreciate and/or compensate the affiliatefor the contact/sale. In one of these embodiments, the affiliate is alsoinformed when the viewer is put in touch with the vendor for moreinformation and/or buys a product/service. For example, in some cases“buy it now” redirects to the vendor and/or other links to the vendormay be redirected via affiliate network system 160 so that affiliatenetwork system 160 may follow up on disbursements of commissions toaffiliates and/or to affiliate network system 160, etc. In anotherembodiment, additionally or alternatively, the video e-commercefacilitator may provide the vendor and/or affiliate with a consolidatedreport including instances that a viewer was put in touch with thevendor, instances that a viewer bought a product/service and/orincluding other tracked information relating to a video e-commercemodule which was published on an affiliate website.

Print component 480 allows the viewer to print what is currently beingdisplayed on the video e-commerce module. Advertisement banner 464allows a banner to be displayed within the video e-commerce module.

Although mentioned above, it is again emphasized to the reader that inother embodiments, a video e-commerce module may have less, more and/ordifferent components than those discussed with reference to FIG. 4.

Referring again to method 200 (FIG. 2), the actions of the videoe-commerce module (which are executed automatically and/or in reactionto viewer action) may be tracked. The tracking is represented by stage262, although the tracking in some cases may take place in parallel toany stage of method 200, for example stage 256, 260, etc. The trackingis performed by tracking engine 142. In one embodiment, tracking engine142 is assisted by an API, for example a web service.

Depending on the embodiment, the tracking can be of varying degrees ofcomprehensiveness. For example, in one embodiment, only buy it nowredirects and checkouts are tracked. As another example, in oneembodiment, additionally or alternatively, any action for which anaffiliate or the video e-commerce facilitator will be compensated by thevendor is tracked. In this example, for actions where the affiliate iscompensated, the tracking data may in some cases need to include theaffiliate code. As another example, additionally or alternatively, anyaction which requires an update of the data in data repository 134 (insome cases any of the following inter-alia: viewer inputted data such ascomments/tags/reviews/polls/forms/etc., tracking data which influencesselection/sequencing by selector 132, etc) is tracked. As anotherexample, additionally or alternatively, actions by the viewer relatingto the video which indicate enjoyment (for example, replay video, savevideo) or non-enjoyment of the video (for example skip to next video)are tracked. As another example, additionally or alternatively, actionsby the viewer which indicate that the video has caused the viewer toconsider the associated product(s)/service(s) are tracked, for exampleviewer clicks on photos, reviews, comments, details, VOIP click to call,IM live chat, email to vendor, click for callback, or price comparisonwhile a video is playing. As another example, additionally oralternatively, actions by the viewer which show that the videoe-commerce module is attractive are tracked, for example “grab code”,“post module”, send to a friend. As another example, additionally oralternatively, viewer actions which affect how selector 132 generates,modifies or sequences a playlist are tracked. As another example,additionally or alternatively, the tracking may commence each time amodule is loaded onto any client 190.

As mentioned above, in some cases, some of the information tracked bytracking engine 142 may be saved in data repository 134. For example,referring to the algorithm example of stage 322, where buy itnow/checkout clicks and the number of times that a video is viewedaffects the sequencing of the playlist, tracking data relating to buy itnow/checkout clicks and video views are saved in data repository 134 sothat selector 132 can execute the algorithm. As another example, datainputted by the user such as comments, tags, polls, reviews, forms, etcmay be tracked and saved in data repository 134.

In stage 264, reporting engine 144 uses the tracked data to preparereports. In one embodiment, reporting engine 144 is assisted by an API,for example a web service. Reports can be used inter-alia for reviewingthe performance of the video e-commerce module.

In one embodiment, reporting engine 144 produces reports according torules set by the video e-commerce facilitator. In another embodiment,additionally or alternatively, a user may configure the content and/orformat of the report, for example via report configurator 108 ofpublishing system 120. In some cases, reports may be viewed afterlogging in. For example, in some of these cases, a vendor may only beallowed to view reports relating to products/services thereof, and/or anaffiliate may only be allowed to view reports relating to a videoe-commerce module published on the affiliate website thereof (i.e.associated with the code of the affiliate). In some embodiments, theremay be different channels for a user to log in and view a report, forexample via report viewer 116 of publishing system 120, via a videoe-commerce module, etc. In one of these embodiments where the log-in isvia a video e-commerce module, the module does not necessarily have tobe associated with the user who is logging in (i.e. a vendor does nothave to have his products/services on the module to log-in through themodule, an affiliate may log-in through a module on a web site ofanother affiliate, etc) In some of these embodiments, the format and/orcontent of the report may vary depending on the channel. For example, inone of these embodiments, only a summary report may be available via avideo e-commerce module, whereas reports with differing levels of detailmay be available via report viewer 116.

As can be seen from the description above, many embodiments of theinvention relate to technological methods, systems and/or computerreadable mediums for video e-commerce. However, some embodiments of thepresent invention additionally or alternatively relate to incentives,compensations and/or opportunities which may in some cases facilitatevideo e-commerce. In one of these embodiments, an affiliate may beprovided with a monetary incentive to publish the video e-commercemodule. Possible monetary incentives are not limited by the invention.For example, in some cases the affiliate may receive a percentage ofsales transactions completed within the published video e-commercemodule (“checkout via module”), sales transactions resulting fromredirecting the viewer to the web site 150 of the vendor via the module(“buy it now redirect”) and/or sale transactions resulting from requestsfor information from the vendor via the e-commerce module (e.g. chat,email, VOIP, callback, etc). Continuing with this example, in some casesthe compensation may only be for sales completed within a predeterminedperiod from the time the viewer clicked on buy it now or requestedinformation from the vendor. As another example, additionally oralternatively, in some cases the affiliate may receive compensation forother actions of a viewer of the module, for example each time theviewer requests to be put in touch with the vendor for more information(e.g. VOIP, chat, email, callback). As another example, in some casesthere may be a higher level of compensation for an affiliate who createdthe catalog (and included playlist) for the published module versus anaffiliate who selected a pre-existing catalog/playlist or had selector132 create the catalog/playlist. In some cases, affiliate network system160 also receives compensation when an affiliate which selected themodule via affiliate network system 160 gets compensated.

In one of these embodiments, in order for the affiliate and optionallyaffiliate system 160 to be compensated, the disburser of thecompensation (for example the vendor and/or facilitator) may in somecases need to be aware of the identity of the affiliate. For thisreason, the affiliate code which was associated with the videoe-commerce module in stage 232 may in some cases be important. In somecases, the affiliate and/or affiliate network system 160 may becompensated by the vendor based on data which the vendor is aware ofwithout reviewing a report by reporting engine 144 (although this doesnot preclude a report of the data also being generated by reportingengine 144). For example, it is possible that in one embodiment a vendormay compensate the affiliate and/or affiliate system 160 for salesensuing from buy it now redirects or ensuing from requests forinformation via the e-commerce module (e.g. chat, email, VOIP, callback,etc). In this example, the buy it now redirect, email, VOIP, callback orchat initiated by the module may cause code of the affiliate to beprovided to the vendor (for example because the code is embedded in thelink to the vendor or otherwise) so that the vendor can compensate thecorrect affiliate and/or affiliate system 160 for any resulting sales.In this example, the operations such as the buy it now redirect, email,VOIP, callback or chat initiated by the module may in some cases also beindicated to the affiliate and/or affiliate system (for example byhaving a link or separate communication of the code to the vendor passvia the affiliate and/or affiliate system, through feedback from themodule, and/or via a report prepared by reporting engine 144). Inanother embodiment, additionally or alternatively compensation ofaffiliates and/or affiliate network system 160 may be based on reportsgenerated by reporting engine 144.

In one of these embodiments, the facilitator is compensated by thevendor. Possible compensation schemes are not limited by the invention.For example, in some cases the facilitator may be compensated for any ofthe following inter-alia: views of videos/products/services, buy it nowredirect clicks, checkout via module clicks, IM live chat clicks, emailsto vendor, VOIP clicks to call, clicks for callback, percentages onsales completed via checkout, percentages on sales resulting from buy itnow redirect, etc.

In one of these embodiments, the vendor has the opportunity to transactmore sales because the offered product/service is displayed on affiliateweb site(s) 170. It is important to note, that the usage of videotypically provides a compelling presentation of the associatedproduct/service and therefore attracts a viewer to purchase theproduct/service. In an embodiment where the catalog (and includedplaylist) is customized to the affiliate website and/or viewer, there isa more targeted presentation of products/services and therefore in somecases it may be more likely that the viewer will be presented with aproduct/service which interests him or her. In an embodiment wherecheckout is completed within the video e-commerce module, the viewer mayin some cases be less likely to abort the transaction than if redirectedto another site to complete the transaction.

From the description above, the reader will understand that in somecases, the catalog which is embodied (e.g. expressed and/or stored) on acomputer readable medium is an item which can potentially be bought andsold due to its valuable contribution to video e-commerce. Even thoughin some embodiments of the invention, the catalog may be provided toanother party without payment for the catalog per-se, this fact does notdetract from the valuable nature of the catalog.

The reader will also understand from the description above, that in somecases, the video e-commerce module is an item which could potentially bebought and sold due to its valuable contribution to video e-commerce.Even though in some embodiments of the invention, the module may beprovided to another party without payment for the module per-se, thisfact does not detract from the valuable nature of the module. Asmentioned above, the video e-commerce module may be made up of anycombination of software, hardware and/or firmware capable of performingthe functions defined and explained herein. For example, in some cases,the video e-commerce module may be embodied on a computer readablemedium.

It will also be understood that in some embodiments the system accordingto the invention may be a suitably programmed computer. Likewise, someembodiments of the invention contemplate a computer program beingreadable by a computer for executing the method of the invention. Someembodiments of the invention further contemplate a machine-readablememory tangibly embodying a program of instructions executable by themachine for executing the method of the invention.

While the invention has been shown and described with respect toparticular embodiments, it is not thus limited. Numerous modifications,changes and improvements within the scope of the invention will nowoccur to the reader.

The invention claimed is:
 1. A system for providing to a viewer acatalog of at least one commodity, comprising: a user device thatincludes a browser configured to access a webpage that is associatedwith a video e-commerce module, and to load the video e-commerce modulethat has been previously configured to enable or disable run-timegeneration or modification of a catalog; wherein the video e-commercemodule is configured, after having been loaded by the browser, tocommunicate at least one parameter and to receive, based at least partlyon the at least one parameter, a catalog of at least one commodity, thevideo e-commerce module further configured to play at least one videoassociated with the catalog.
 2. The system of claim 1, wherein at leastone of the at least one parameter is selected from a group comprising:vendor identifier, category identifier, selection criterion, catalogidentifier, sequencing criterion, webpage keyword, viewer data, rule forselection, rule for sequencing, playlist identifier, video identifier,and vsense.
 3. The system of claim 1, wherein the webpage is associatedwith a shopping network.
 4. The system of claim 3, wherein a domain ofthe webpage is a parked domain.
 5. The system of claim 1, wherein thewebpage is selected from a group comprising: blog, generic website,social platform, and search engine.
 6. The system of claim 1, whereinthe video e-commerce module is further configured to communicateinformation for tracking purposes.
 7. A method of providing to a viewera catalog of at least one commodity that is embodied on amachine-readable medium, comprising: providing a video e-commerce modulethat has been previously configured to enable or disable run-timegeneration or modification of a catalog, communicating at least oneparameter and receiving, based at least partly on the at least oneparameter, a catalog of at least one commodity; and playing at least onevideo associated with the catalog.
 8. A computer program productcomprising a non-transitory machine-readable medium havingmachine-readable program code embodied therein for providing to a viewera catalog of at least one commodity that is embodied on amachine-readable medium, the computer program product comprising:machine-readable program code indicative of whether run-time generationor modification of a catalog has been previously enabled or disabled;machine-readable program code to cause a machine to communicate at leastone parameter and to receive, based at least partly on the at least oneparameter, a catalog of at least one commodity; and machine-readableprogram code to cause the machine to play at least one video associatedwith the catalog.
 9. A method of providing to a viewer a catalog of atleast one commodity that is embodied on a machine-readable medium,comprising: communicating at least one parameter, including anindication that run-time generation or modification of a catalog hasbeen enabled, and receiving, based at least partly on the at least oneparameter, a catalog of at least one commodity generated or modified inrun-time; and playing at least one video associated with the catalog;wherein at least one of the steps is carried out in software executingin a hardware element.
 10. A computer program product comprising anon-transitory machine-readable medium having machine-readable programcode embodied therein for providing to a viewer a catalog of at leastone commodity that is embodied on a machine-readable medium, thecomputer program product comprising: machine-readable program code tocause a machine to communicate at least one parameter, including anindication that run-time generation or modification of a catalog hasbeen enabled, and to receive, based at least partly on the at least oneparameter, a catalog of at least one commodity generated or modified inrun-time; and machine-readable program code to cause the machine to playat least one video associated with the catalog.
 11. A method ofgenerating or modifying in run-time a catalog of at least one commoditythat is embodied on a machine-readable medium, comprising: receiving anindication that run-time generation or modification of a catalog hasbeen enabled; executing an algorithm to determine which at least onecommodity to include in the catalog, wherein the algorithm is executedas software in a hardware element; retrieving data relating to theincluded at least one commodity, the data including one or more videosassociated with the included commodities or one or more links to the oneor more associated videos; and communicating the catalog that isembodied on a machine-readable medium and that includes the data.
 12. Acomputer program product comprising a non-transitory machine-readablemedium having machine-readable program code embodied therein forgenerating or modifying in run-time a catalog of at least one commoditythat is embodied on a machine-readable medium, the computer programproduct comprising: machine-readable program code to cause a machine toreceive an indication that run-time generation or modification of acatalog has been enabled; machine-readable program code to cause themachine to execute an algorithm to determine which at least onecommodity to include in the catalog; machine-readable program code tocause the machine to retrieve data relating to the included at least onecommodity, the data including one or more videos associated with theincluded commodities or one or more links to the one or more associatedvideos; and machine-readable program code to cause the machine tocommunicate the catalog that is embodied on a machine-readable mediumand that includes the data.